Operator DmaToPC

Operator Library: Hardware Platform

The DmaToPC operator is the image interface between a VisualApplets applet and the host PC. The DMAToPC operator transfers images from the applet to the host PC. Image transfer is performed using direct memory access, i.e., the image data is directly written to the host PC memory.

The operator uses one VisualApplets resource of type DMA. Set the resource index for the DMA in the resource dialog. Depending on the used frame grabber, multiple DMA channels can be used. Check 'Allocation of Device Resources' for more information.

Multitple color formats, bit widths and parallelisms are supported. The allowed combinations depend on the used hardware platform:

  • imaFlex CXP-12 Quad and imaFlex CXP-12 Penta:

    • The product of the bit width and parallelism must be an integer multiple of 8 and must be less than or equal to 256.

    • The product of the maximal image width and the maximal image height must be divisible by 4 bytes.

  • microEnable 5 marathon VCLx, microEnable 5 marathon VCL, microEnable 5 marathon VCX-QP, microEnable 5 marathon VF2, and LightBridge VCL:

    The link properties of the operator input depend on the PCIe mode that is supported by the applet. The supported PCIe mode you can select in operator AppletProperties, parameter PcieInterfaceType.

    Multiple color formats, bit widths and parallelism are supported. The maximum of the product Parallelism x Bit Width must be a multiple of 8 and depends on the PCIe mode you selected in operator AppletProperties:

    • Generation_1: Parallelism x Bit Width <= 64 Bit.
    • Generation_2: Parallelism x Bit Width <= 128 bit

    The product of the maximal image width and the maximal image height must be divisible by 4 bytes.

  • microEnable 5 ironman VD8-PoCL, microEnable 5 ironman VQ8-CXP6D (DIN connector) and microEnable 5 ironman VQ8-CXP6B (BNC connector):

    • When parameter PcieInterfaceType in the operator AppletProperties is set to Generation_1, the product of the bit width and the parallelism must be a multiple of 8 and less or equal to 128.

    • When parameter PcieInterfaceType in the operator AppletProperties is set to Generation_2, the product of the bit width and the parallelism must be a multiple of 8 and less or equal to 256.

  • microEnable IV VD4-CL/-PoCL and microEnable IV VQ4-GE/-GPoE:

    For the frame grabbers using a PCIe x4 interface, the product of the bit width and parallelism must be an integer multiple of 8 and must be less than or equal to 128.

  • microEnable IV VD1-CL/-PoCL:

    For grayscale images, the product of the parallelism and bit width must either be 16, 32, 64 or 128. In case of color formats, the product either has to be 24 or 48.

[Note] RGB is converted to BGR

The operator converts RGB data to BGR data (i.e., the components R and B are switched before DMA transfer). After DMA transfer, the former RGB image is available as a BGR image in the PC's RAM. This conversion is carried out to ease further processing with software tools, as most software tools directly support BGR format.

Available for Hardware Platforms
imaFlex CXP-12 Penta
imaFlex CXP-12 Quad
microEnable 5 marathon VCLx
microEnable 5 marathon VCL
microEnable 5 marathon VCX-QP
microEnable 5 marathon VF2
LightBridge VCL
microEnable 5 ironman VQ8-CXP6D/-CXP6B
microEnable 5 ironman VD8-PoCL
microEnable IV VD1-CL/-PoCL
microEnable IV VD4-CL/-PoCL
microEnable IV VQ4-GE/-GPoE

I/O Properties

Property Value
Operator Type M
Input Link I, image data input

Supported Link Format

Link Parameter Input Link I
Bit Width see description
Arithmetic unsigned
Parallelism see description
Kernel Columns 1
Kernel Rows 1
Img Protocol VALT_IMAGE2D
Color Format {VAF_COLOR, VAF_GRAY}
Color Flavor {FL_NONE, FL_RGB} If VAF_GRAY selected: FL_NONE; If VAF_COLOR selected: FL_RGB
Max. Img Width any
Max. Img Height any

Parameters

CurrentTransferLength
Type dynamic read parameter
Default
Range [0; 2^34-1]

The parameter reflects the amount of byte that has already been transferred of a frame that is being processed. This information allows to analyze DMA buffer data in a software application before the entire frame is transmitted.

[Note] Availability

mE5 marathon VCLx, mE5 marathon VCL, mE5 marathon VCX-QP, mE5 marathon VF2, LightBridge VCL, mE5 ironman VQ8-CXP6D, and mE5 ironman VQ8-CXP6B

PixelsPerLine
Type dynamic read parameter
Default 0
Range

The previously transferred image line length in pixels.

[Note] Availability

microEnable IV VD4-CL/-PoCL and microEnable IV VQ4-GE/-GPoE only

PixelsPerLine
Type dynamic read parameter
Default 0
Range

The previously transferred image line length in bytes.

[Note] Availability

microEnable IV VD4-CL/-PoCL and microEnable IV VQ4-GE/-GPoE only

ReadLongsPerLine
Type dynamic read parameter
Default 0
Range

This parameter provides the geometry of the transferred frame. The number of long words (4 byte) per line can be read.

[Note] Availability

microEnable IV VD1-CL only

Examples of Use

The use of operator DmaToPC is shown in the following examples: